package br.com.news.database.services;

import java.util.List;

import javax.inject.Inject;
import javax.inject.Named;

import br.com.news.database.daos.interfaces.ICategoriaUsuarioDao;
import br.com.news.database.entities.CategoriaUsuarioEntity;
import br.com.news.database.utils.GenericService;
import br.com.news.database.utils.interfaces.IGenericDao;
import br.com.news.utils.database.beans.CategoriaUsuarioBean;
import br.com.news.utils.database.beans.UsuarioBean;
import br.com.news.utils.database.interfaces.ICategoriaUsuarioServiceDb;

@Named
public class CategoriaUsuarioServiceDb extends GenericService<CategoriaUsuarioBean, CategoriaUsuarioEntity, Long> implements ICategoriaUsuarioServiceDb{

	@Inject
	private ICategoriaUsuarioDao categoriaUsuarioDao;

	@Override
	protected IGenericDao<CategoriaUsuarioEntity, Long> getConcreteDao() {
		return this.categoriaUsuarioDao;
	}
	
	@Override
	public List<CategoriaUsuarioBean> buscaCategoriaDoUsuario(String idUsuario) {
		return parserEntity(categoriaUsuarioDao.buscaCategoriaDoUsuario(idUsuario));
	}
	
	@Override
	public List<CategoriaUsuarioBean> buscaCategoriasDeEnvioEmailDoUsuario(UsuarioBean usuario) {
		return parserEntity(categoriaUsuarioDao.buscaCategoriasDeEnvioEmailDoUsuario(usuario.getLogin()));
	}

}
